Ethernet networks can be split and isolated into multiple "segments" with frames between segments selectively forwarded as required to maintain communication between devices on different segments. The device responsible for forwarding the frames between segments is known as an Ethernet switch. Traditionally such switches were implemented using only hardware with all forwarding decisions and processing being made using hard-wired logic to obtain the necessary level of performance. This has been an expensive and inflexible method of realizing a frame switching device. In addition, the frame switching algorithms employed had to be quite simple and unsophisticated due to the need to implement them in hardware. Finally, it was necessary to make use of a separate CPU (in addition to the frame switching hardware) in order to initialize, manage and maintain the switch, and allow human system managers to communicate with it, which also increased the cost and development time of Ethernet frame switches.
Accordingly, it is an object of the invention to provide an improved Ethernet frame switch. It is a further object of the invention to provide a an Ethernet frame switch of reduced cost and complexity. It is yet a further object of the invention to provide an Ethernet frame switch that allows modification of the switching processes without replacement of the hardware.